﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Data;

namespace Bussiness
{
    public class ControladoraABMImagen
    {
        public static Imagen agregarImagen(string alt, string ruta, string titulo)
        {
            using (dbOttado db = new dbOttado())
            {
                Imagen imagen = new Imagen();
                imagen.id = Guid.NewGuid();
                imagen.fechaCreacion = DateTime.Now;
                imagen.alt = alt;
                imagen.ruta = ruta;
                imagen.titulo = titulo;

                db.AddToImagen(imagen);
                db.SaveChanges();
                return imagen;
            }
        }

        public static string getRutaImagen(Guid idImagen)
        {
            using (dbOttado db = new dbOttado())
            {
                var ruta = (from imagen in db.Imagen
                           where imagen.id == idImagen
                           select imagen.ruta).FirstOrDefault();
                return ruta;
            }
        }

        public static string getRutaServer(String environment)
        {
            using (dbOttado db = new dbOttado())
            {
                var rutaServer = (from config in db.Config
                                  where config.environment == environment
                                  select config.url).FirstOrDefault();
                return rutaServer;
            }
        }

        public static bool checkFileNameExist(string ruta)
        {
            bool result = false;
            using (dbOttado db = new dbOttado())
            {
                var imagen = from i in db.Imagen
                             where i.ruta == ruta
                             select i;
                if (imagen.Count() > 0) result = true;
                return result;
            }
        }

        public static Imagen agregarImagen(string alt, string ruta, string titulo, bool esPlano, bool esPresentacion, bool esUbicacion)
        {
            using (dbOttado db = new dbOttado())
            {
                Imagen imagen = new Imagen();
                imagen.id = Guid.NewGuid();
                imagen.fechaCreacion = DateTime.Now;
                imagen.alt = alt;
                imagen.ruta = ruta;
                imagen.titulo = titulo;
                imagen.esPlano = esPlano;
                imagen.esPresentacion = esPresentacion;
                imagen.esUbicacion = esUbicacion;        
                db.AddToImagen(imagen);
                db.SaveChanges();
                return imagen;
            }
        }
    }
}
